package cn.lixufeng.order.service;

import cn.lixufeng.basic.service.IBaseService;
import cn.lixufeng.basic.utils.PageList;
import cn.lixufeng.order.domain.AdoptOrder;
import cn.lixufeng.order.query.AdoptOrderQuery;
import cn.lixufeng.user.domain.LoginInfo;

import java.util.Map;

public interface IAdoptOrderService extends IBaseService<AdoptOrder> {

    /**
     * 领养订单提交
     * @param params
     * @param loginInfo
     * @return
     */
    String submit(Map<String, Object> params, LoginInfo loginInfo);

    /**
     * 管理页查询领养订单
     * @param query
     * @param loginInfo
     * @return
     */
    PageList<AdoptOrder> admin(AdoptOrderQuery query, LoginInfo loginInfo);

    /**
     * 网站用户查询我的订单
     * @param query
     * @param loginInfo
     * @return
     */
    PageList<AdoptOrder> user(AdoptOrderQuery query, LoginInfo loginInfo);

    /**
     * Quartz定时触发的取消业务
     * @param orderId
     */
    void deleteByQuartz(Long orderId);

}
